Do not parse all GDK-X11 source files
authorEmmanuele Bassi <ebassi@gnome.org>
Tue, 7 Apr 2020 15:46:12 +0000 (16:46 +0100)
committerEmmanuele Bassi <ebassi@gnome.org>
Tue, 7 Apr 2020 17:06:08 +0000 (18:06 +0100)
We don't need all of them, only the ones that contain public API. This
allows us to reduce the chance of a stray symbol getting incorrectly
added to the introspection data.

gdk/x11/meson.build
gtk/meson.build

index 6db7e695b374a59aa0632c73840f91e2677981ec..f846450c3bfa0910c06ca63fa23249198f5f75b2 100644 (file)
@@ -1,36 +1,44 @@
+# A list of sources that contain public API; these are the sources that
+# will be introspected for the GdkX11 namespace.
+#
 # Note: gdksettings.c gets included from xsettings-client.c, do not add here
-gdk_x11_sources = files([
-  'gdkapplaunchcontext-x11.c',
-  'gdkasync.c',
-  'gdkcairocontext-x11.c',
-  'gdkclipboard-x11.c',
+gdk_x11_public_sources = files([
   'gdkcursor-x11.c',
   'gdkdevice-xi2.c',
   'gdkdevicemanager-x11.c',
   'gdkdevicemanager-xi2.c',
   'gdkdisplay-x11.c',
-  'gdkdrag-x11.c',
-  'gdkdrop-x11.c',
-  'gdkeventsource.c',
-  'gdkeventtranslator.c',
   'gdkglcontext-x11.c',
   'gdkkeys-x11.c',
-  'gdkmain-x11.c',
   'gdkmonitor-x11.c',
   'gdkproperty-x11.c',
   'gdkscreen-x11.c',
   'gdkselection-x11.c',
-  'gdkselectioninputstream-x11.c',
-  'gdkselectionoutputstream-x11.c',
-  'gdktextlistconverter-x11.c',
   'gdkvisual-x11.c',
-  'gdkvulkancontext-x11.c',
   'gdksurface-x11.c',
-  'gdkxftdefaults.c',
   'gdkxid.c',
   'xsettings-client.c',
 ])
 
+# All sources
+gdk_x11_sources = gdk_x11_public_sources + [
+  'gdkapplaunchcontext-x11.c',
+  'gdkasync.c',
+  'gdkcairocontext-x11.c',
+  'gdkclipboard-x11.c',
+  'gdkdrag-x11.c',
+  'gdkdrop-x11.c',
+  'gdkeventsource.c',
+  'gdkeventtranslator.c',
+  'gdkmain-x11.c',
+  'gdkselectioninputstream-x11.c',
+  'gdkselectionoutputstream-x11.c',
+  'gdktextlistconverter-x11.c',
+  'gdkvulkancontext-x11.c',
+  'gdkxftdefaults.c',
+]
+
+# Public headers; will be installed and introspected
 gdk_x11_public_headers = files([
   'gdkx-autocleanups.h',
   'gdkx11applaunchcontext.h',
index d35f79630d0a394f90e8eb2d3ac4fcba4a1fbf8f..c7627af5f06d0deebf0c2d140dc59ca593035d28 100644 (file)
@@ -1044,7 +1044,7 @@ if build_gir
 
   if x11_enabled
     gdk_x11_gir = gnome.generate_gir(libgtk,
-                                     sources: gdk_x11_public_headers + gdk_x11_sources,
+                                     sources: gdk_x11_public_headers + gdk_x11_public_sources,
                                      namespace: 'GdkX11',
                                      nsversion: gtk_api_version,
                                      identifier_prefix: 'Gdk',